Wstęp do uczenia maszynowego

Projekt nr 1

Jakub Piwko, Malwina Wojewoda

Pakiety

Dane i ich opis

Ekspoloracja danych

Analiza braków danych

W ramce danych nie wystąpują wartości None/Null. Z opisu ramki wiemy, że takowe braki, jeśli występują, są zakodowane odpowiednimi wartościami w kolumnach: ? dla danych nominalnych oraz -100000 dla numerycznych. Sprawdźmy, ile rekordów z takimi wartościami występują w ramce.

Okazuje się, że mamy braki w kolumnach workclass, occupation i workclass. Z czego dwie pierwsze kolumny w oczywisty sposób są powiązane, bo brak zawodu może automatycznie oznaczać brak klasy roboczej. Wartości "?" stanowią klasę zmiennej kategorycznej i nie ma sensu tego zmieniać w inny sposób.

Średnia, wartości minimalne itd.

Warto sprawdzić jaka jest średnia, odchylenie standardowe, wartość minimalna, maksymalna oraz kwartyle danych w poszczególnych kolumnach.

Już dzięki temu zestawieniu możemy powiedzieć coś o danych. Można stwierdzić, że dużo osób pracuje 40 godzin tygodniowo. Porównując średnie z wartościami minimalnymi i maskymalnymi dla kolumny capital_gain i capital_loss można stwierdzić, że wartości są bardzo rozchwiane i występują obserwacje odstające. Przyjrzyjmy sie histogramom.

Rozkłady zmiennych

Wspomniane wcześniej wnioski się potwirerdzają. Najwięcej osób pracuje 40 godzin tygodniowo, choć znajdują się osobu pracujące powyżej 80. Kolumny capital_gain i capital_loss wyglądają niekorzytsnie, gdyż mają przeważającą liczbę obserwacji zerowych. Wiek ma dosyć regularny rozkład, ale bardziej skośny prawostronnie, czyli w stronę osób młodszych. Wydaje się też, że dane zostały ucięte na wieku 90 lat. Jak wynika z opisu, kolumna fnlwgt jest parametrem, który ma oddawać wagę danego rekordu. Oznacza to więc, że nie będzie miała znaczenia dla oceny zarobków i można ją usunąć. Z kolei zmienna education_num wydaje się być zmienną kategoryczną.

Z zsumowania rekordów zawierających unikalne pary education + education_num wynika, że ta druga kolumna jest tylko numerycznym zakodowaniem kolumny opisującej osiągnięty etap edukacji z zachowaniem porządku, zatem kolumna education nie będzie niezbędna w dalszej predykcji, dlatego możemy ją usunąć.

Zamiana wartości ostatniej kolumny:

ponieważ łatwiej pracuje się ze zmiennymi numerycznymi

Korelacje

Interesuje nas jak zmienne korelują ze zmienną income_level, ponieważ właśnie ją będziemy przewidywać. Widać, że wszystkie korelują z nią dodatnio.

Dodatkowo warto wiedzieć, że znacznie mniej osób zarabia powyżej progu 50K$. Teraz przyjrzyjmy sie rozkładom zmiennych typowo ciągłych z uwzględnieniem poziomu zarobków.

Wiek

Z rozkładu zmiennej age z uwzględnieniem podziału na poziom zarobków, można stwierdzić, że wśród osobów zarabiających lepiej, rozkład przesuwa się w stronę osób starszych.

Podzielmy tę zmienną na kategorie, oznaczając każdą kategorię jako koniec danego przedziału wieku, czyli:

Przepracowane godziny w tygodniu

Dzięki zachowaniu skali ilości na wykresach można zauważyć tendecję, że osoby które pracują więcej, zarabiają lepiej. Świadczy o tym skupienie prawie wszystkich obserwacji powyżej poziomu 35h dla poziomu 1, podczas, gdy dla poziomu 0 widać duży peak w okolicach 40, ale dużą liczbę obserwacji poniżej tej wartości. Tę zmienną również możemy zmienić na kategoryczną, dzieląc co 10.

Zyski i straty kapitałowe

Jako, że zmienne capital_gain i capital_loss także są typowo ciągłe, żeby uwzględnić ich rozkłady pozbędziemy się najpierw obserwacji, dla których wartości powyższych kolumn są zerowe, ponieważ wartości tych jest bardzo dużo.

Zobaczmy jeszcze jak to dokładniej wygląda na histogramach:

Widać, że w przypadku zmiennej capital_gain więcej osób, które mają przychód >50 000 \$ osiąga zysk na poziomie 0-20 000\\$. Wydaje się też, że dane zostały ucięte dla wartości powyżej 100 000\$. Dla osób w grupie o niższych przychodach widać, że wartości zysku nie przekraczają wartości 50 000\\$, ponieważ to wlicza się do ogólnego przychodu. Aby to było możliwe ktoś musiałby usyskać dużą staratę kapitałową, ponieważ przychód liczony jest jako capital_gain - capital_loss + salary

Tę kolumnę również zmienimy na zmienną kategoryczną.

Zobaczmy jeszcze jak to dokładniej wygląda na histogramach:

capital_loss w przypadku obu grup osób nie przekracza 5000\$ i najwięcej osób (oprócz tych dla których odnotowano zerową wartość tej zmiennej) osiąga straty kapitałowe w okolicy 2000\\$. Rozkłady są bardzo podobne, jednak dla osób, które odnotowały mniejszy dochód bardziej przesunięte w stronę mniejszych wartości, a dla drugiej grupy w stronę większych wartości.

Tę zmienną również przekształcimy na kategoryczną.

Teraz przyjrzymy się zależnościom między zmiennymi kategorycznymi i zmienną poziomującą zarobki

Kraj pochodzenia

Jako że przeważająca liczba osób ze zbioru pochodzi ze Stanów Zjednoczonych, dla efektywniejszego wyciągania wniosków lepiej będzie zbadać procentowy udział osób zarabiających na danym poziomie dla każdego z krajów, z którego pochodzą emigranci.

Widać, że wśród krajów, z których najmniejszy procent zarabia powyżej 50K to kraje Ameryki Środkowej. Po drugiej stronie przeważają z kolei kraje Europy i Azji. Można stwierdzić, że zależy to od rozwoju danych krajów. Jasne wydaje się, że dla osób pochodzących z tych bardziej rozwiniętych łatwiej jest o wyższe zarobki.

W celu zredukowania klas można by pogupować te dane w zależności od uzyskowanego dochodu, szczególnie że emigrantów jest stosunkowo mało, więc raczej nie wpłynęłoby to znacząco na dokładność predykcji, a mogłoby przyspieszyć ten proces. Spróbujmy więc zastosować taką redukcję:

Widać, że jedyne bardziej wyróżniające się jednostki to United-States oraz Mexico. W takim razie wszystkie inne (w tym braki danych) możemy uznać jako Others

Wykształcenie

Możemy zaobserwować, że najwięcej osób z naszej próbki ma wykształcenie średnie (9 - HS-grad) lub uczęszczali na studia ale nie zdobyli stopnia naukowego (10 - some college). Dużo jest także osób ze stopniem licencjackim (13 - Bachelor). Widać wyrażnie, że im wyższy poziom w naukowej drabince, tym osób zarabiających powyżej 50K jest coraz więcej w stosunku do tych zarabiających mniej. Dla stopni powyżej magistra (od 14 - Masters) osoby oznaczone numerem 1 przeważają.

Stan cywilny

Największe grupy osób są w związku z małżeńskim z osobą cwyilną, ewentualnie nigdy nie zawierały takiego związku lub są rozwiedzione. Pozostałe grupy są wyraźnie mniej liczne, a najmniejszą stanowią osoby w związku małzeńskim z osobą wojskową. W każdej grupie jest przewaga osób zarabiających mniej niż 50K. Jednak grupa małzeństw z osobami cywilnymi wyróżnia się najbardziej wyrównaną proporcją osób o różnym poziomie zarobków, podczas gdy wśród pozostałych zdecydowanie więcej osób nie zarabia więcej niz 50K. Może to nasuwać wniosek, że osoby w związku małżeńskim mają większą szansę na stabilność finansową, a co za tym idzie, lepsze zarobki w ogólności.

Dosyć podobną do poprzedniej zmiennej jest zmienna relationship. Wnioski się nakładają, bo ponownie widać, że proporcja osób o różnych poziomach zarobków jest wyrównana dla osób w związku małżeńskim. Dla pozostałych grup zdecydowanie przeważają osoby o mniejszych zarobkach.

Klasa robocza i zawód

Przewazająca część osób z próbki to osoby pracujące w sektorze prywatnym. Mimo, że jest tam również najwięcej osób, które zarabiają powyżej 50K, to proporcjonalnie zdecydowanie więcej osób zarabia więcej w sektorze samozatrudniających się.

Ze względu na duże zróznicowanie zawodów, najpierw przyjrzymy się jak dużo osób pracuje w poszczególnych dziedzinach.

Widać, że wśród osób z naszej ramki rozkład zawodów jest bardziej równowmierny. A teraz sprawdzimy jak duża część osób zarabai więcej niż 50K dla każdej grupy.

Dwie grupy o największym stosunku oznaczonych 1 do oznaczonych 0 to osoby o stanowiskach kierowniczych i osoby pracujące w specjalizacji. Są to także ogólnie najliczniejsze grupy pracujących, więc można uznać że praca w tych dwóch obszarach daje lepsze wynagrodzenie Nie można tego powiedzieć o osobach pracujących w zawodach odpowiedzialnych za sprzątanie i zajmowanie się domem, gdzie osób zarabaijących powyżej 50K jest bardzo mało.

Płeć i rasa

Dla lepszego zobrazowania ilości osób w poszczególnych grupach, używamy skali logarytmicznej. Wśród naszych obserwacji występuje więcej osób płci męskiej, a także przeważają osoby białe.

Można zauważyć, że w przypadku osób zarabiających poniżej 50K, stosunek kobiet do mężczyzn jest znacznie większy. Oznacza to, że kobiety częściej zarabiają mniejsze stawki. Dysproporcje można też dostrzec porównując grupy rasowe:

Można zauważyć, że wśród osób Czarnoskórych oraz rdzennych Amerykanów i Inuitów występuje najmniejszy procent osób zarabiających powyżej 50K. Z kolei ludzie z Azji i wysp Pacyfiku oraz ludzie biali mają mniej drastyczną różnicę procentową i około 30% zarabia lepiej.

Podsumowanie

Dzięki eksploracji danych pod kątem dalszej predykcyjności zmiennej określającej, czy ktoś zarabia mniej czy więcej niż 50 000$ rocznie doszliśmy do następujących wniosków: